Solid-state storage devices have increased in popularity in recent years. By way of example, flash memory has come into common use in storage devices used with host devices such as digital cameras, music players, and the like. The memory used in these storage devices comprise re-writable memory, i.e., memory that may be written to and later re-written over.
Recently, increased attention has been focused on write-once or one time programmable (OTP) memory as an alternative to re-writable memory. One reason for this interest is that write-once memory is potentially much cheaper to produce as compared to re-writable memory. With such memory, relatively inexpensive storage devices can be created for one time use with various host devices. For instance, write-once storage devices could be used with digital cameras in similar mariner to the way in which film is used in conventional cameras.
Despite the desirability of write-once memory, its use in most host devices is not currently feasible in that such devices are configured for use only with re-writable memory. For instance, most digital cameras are configured so as to permit the user to delete a captured image and store a new image (i.e., new image data) over the deleted image. Where the memory is write-once, however, such functionality is not possible and will likely result in a system error within the host device. In addition, most host devices are configured to modify the file access table of its associated storage device. Again, where the memory of the storage device is write-once, such modification is not feasible.
Although existing host devices can be reprogrammed, e.g. through the provision of new firmware, so as to be compatible with write-once memory, such reprogramming is expensive in terms of software or firmware development as well as distribution and installation. Accordingly, it can be appreciated that it would be desirable to have a storage device that includes write-once memory, so as to reduce the cost of the device, which is also compatible with existing host devices that are configured for use with re-writable memory.